/**
 * ClassName 部门管理main布局
 */
Ext.define("login.view.RegisterForm",{
	extend:'Ext.window.Window',
	alias:'widget.registerform',
	closable : false,
	resizable :  false,
	header : false,
	id:'regester',
	items:[{
		title:'注册',
		xtype:'form',
		
		width:280,
		height:160,
		id:'register',
		bodyPadding:'5 15 5 15',
	
		defaultType:'textfield',
		defaults:{				//表单默认属性
			labelSeparator : ": ",
			labelWidth : 80,
			width : 220,
			allowBlank : false,	//不为空
			msgTarget : 'side',//错误提示在表单右边固定位置
			labelAlign:'right',//标签右对齐
			blankText : '不能为空' 
		},
		items:[
		       {
		    	   xtype:'textfield',name:'username',id:'username',fieldLabel:'用户名',
		    	 //最小长度限制和其错误提示
		    	   minLength : 4,
		    	   minLengthText : '用户名长度至少为4',
		    	 //最大长度限制和其错误提示   
		    	   maxLength : 12,
		    	   maxLengthText : '用户名长度不能多于12',
		    	   },
		       {
		    		   xtype:'textfield',name:'password',id:'pwd',fieldLabel:'密码',inputType:'password',
		    		 //最小长度限制和其错误提示
			    	   minLength : 4,
			    	   minLengthText : '密码长度至少为4',
			    	 //最大长度限制和其错误提示   
			    	   maxLength : 12,
			    	   maxLengthText : '密码长度不能多于12',
			    	
		       },
		       {
		    	   xtype:'textfield',name:'rePassword',id:'rePwd',fieldLabel:'确认密码',inputType:'password',
		    	 //最小长度限制和其错误提示
		    	   minLength : 4,
		    	   minLengthText : '密码长度至少为4',
		    	 //最大长度限制和其错误提示   
		    	   maxLength : 12,
		    	   maxLengthText : '密码长度不能多于12',
		    	   vtype : 'password',//自定义password验证器
		    	   vtypeText : '两次密码不一致',
		    	   confirmTo : 'pwd',
		       },	
		       
		       /* {xtype:'textfield',name:'info',fieldLabel:'说明',},*/
		],
		buttons: [{text:'登录',action:'toLogin',},{text:'注册',action:'register',}],	
	},	 
	],
				       		
	initComponent:function(){//初始化方法
		this.callParent(arguments);
		//this.show();
		//先用 Ext.apply 方法添加自定义的 password 验证器    
		Ext.apply(Ext.form.VTypes,{    
		    password : function(val,field){             //val指的是文本框的值，field指的是文本框组件  
		        if(field.confirmTo){                    //confirmTo是我自定义的配置参数，一般用来保存另一个组件的id    
		            var pwd = Ext.getCmp(field.confirmTo);   //取得confirmTo组件的值    
		           /* console.log(field.confirmTo);
		            console.log(pwd);
		            console.log(val);*/
		            return (val==pwd.getValue());    
		        }    
		        return true;    
		    }    
		});
		
/*		Ext.apply(Ext.form.VTypes,{   
			
		    repeatUsername : function(val,field){
		    	var flag;
				//var value = username.value;
				var data = {'username':val};
				Ext.Ajax.request({
					url:ROOT+'/index.php/Home/Register/validateUser',
					params:data,
					async : false,//同步执行
					method:'post',
					timeout:2000,
					success:function(response,opts){
						
						var response=response.responseText;
						console.log(response);
						if(response==1){
							//Ext.Msg.alert('注册结果',response);
							
							flag = true;
							//Ext.getCmp('username').clearInvalid(); 
						}else{
							//Ext.Msg.alert('注册结果',response);
							
							flag = false;
							 
							//Ext.getCmp('username').markInvalid('用户名已被使用');
						}
						return flag
					}
				})  
		    } ,
		    'repeatUsernameText' : '用户名已被注册',
		});*/
	}
		
})